package br.com.felipeab.dexter.util;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * Classe StringHelper
 * 
 * @author Felipe A. Braga <br>
 *         16/06/2012 16:17:31<br>
 * 
 */
public final class StringHelper {

	/**
	 * Verifica se a string passada é nula ou vazia.
	 * 
	 * @param string
	 * @return <b>true</b> caso a string enviado seja nula ou vazia.<br>
	 *         <b>false</b> caso contrário.
	 */
	public static boolean isNullOrEmpty(String string) {
		if (string == null || (string != null && "".equals(string.trim()))) {
			return true;
		}
		return false;
	}

	/**
	 * Efetua uma encriptação de um texto
	 * 
	 * @param text
	 * @return um texto criptografado
	 */
	public static String encryptText(String text) {
		try {
			MessageDigest digest = MessageDigest.getInstance("SHA-512");
			digest.update(text.getBytes("UTF-8"));

			byte[] bt = digest.digest();

			StringBuilder hex = new StringBuilder();

			for (int i = 0; i < bt.length; i++) {
				hex.append(Integer.toString((bt[i] & 0xff) + 0x100, 16).substring(1));
			}

			return hex.toString();
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		return text;
	}
}
